Increasing instances of data theft are leading to expanding demands for data safety. Applying data access controls in relational databases is facilitated by the structured nature of the data. Semi-structured documents do not have a formal structure, but they do contain tags or other markers to separate semantic elements and enforce hierarchies of records and fields. Databases with semi-structured documents do not enjoy the same structural precision as relational databases and therefore efforts to safeguard data in such databases are more challenging. Thus, there is a need for improved data security in semi-structured document databases.